From abed139a5901738a24c00d835c395b70ebfd4571 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Timm=20B=C3=A4der?= Date: Tue, 10 Oct 2017 21:54:53 +0200 Subject: [PATCH] cssnode: Delay getting the parent style until we need it There's an early return before. Look at all those saved cycles. --- gtk/gtkcssnode.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/gtk/gtkcssnode.c b/gtk/gtkcssnode.c index 94139cd510..95a687ffac 100644 --- a/gtk/gtkcssnode.c +++ b/gtk/gtkcssnode.c @@ -361,12 +361,13 @@ gtk_css_node_create_style (GtkCssNode *cssnode) GtkCssStyle *style; decl = gtk_css_node_get_declaration (cssnode); - parent = cssnode->parent ? cssnode->parent->style : NULL; style = lookup_in_global_parent_cache (cssnode, decl); if (style) return g_object_ref (style); + parent = cssnode->parent ? cssnode->parent->style : NULL; + if (gtk_css_node_init_matcher (cssnode, &matcher)) style = gtk_css_static_style_new_compute (gtk_css_node_get_style_provider (cssnode), &matcher, -- 2.30.2